'use strict';

/**
 * @param {Egg.Application} app - egg application
 */
module.exports = app => {
  const { router, controller } = app;
  // const jwtErr = middleware.jwtErr(app.config.jwt);
  router.get('/', controller.home.index);
  router.get('/user', controller.user.index);

  // 公共接口
  // 七牛上传图片
  router.post('/api/admin/uploadImgToQiNiu', controller.common.uploadImgToQiNiu);


  // 获取所有管理员
  router.get('/api/admin/getAdminList', controller.admin.index);
  // 根据id获取某个管理员
  router.get('/api/admin/getAdminDetailById', controller.admin.getAdminDetail);
  // 新增管理员
  router.post('/api/admin/addAdmin', controller.admin.addAdmin);
  // 删除管理员
  router.post('/api/admin/deleteAdmin', controller.admin.deleteAdmin);
  // 更新管理员
  router.post('/api/admin/updateAdmin', controller.admin.updateAdmin);
  // 管理员登录
  router.post('/api/admin/login', controller.admin.login);

  // 商品分类接口
  router.post('/api/admin/addCategory', controller.category.addCategory);

  // 获取商品分类
  router.get('/api/admin/getCategoryList', controller.category.getCategoryList);
  // 根据商品分类id获取商品分类详情
  router.get('/api/admin/getCategoryById', controller.category.getCategoryById);
  // 根据id修改分类信息
  router.post('/api/admin/updateCategory', controller.category.updateCategory);
  // 删除分类
  router.post('/api/admin/deleteCategory', controller.category.deleteCategory);

  // 获取型号
  router.get('/api/admin/getSpecList', controller.specification.getSpecList);
  // 新增型号
  router.post('/api/admin/addSpec', controller.specification.addSpec);
  // 根据id获取型号信息
  router.get('/api/admin/getSpecById', controller.specification.getSpecById);

  // 更新型号
  router.post('/api/admin/updateSpec', controller.specification.updateSpec);
  // 删除型号
  router.post('/api/admin/deleteSpecById', controller.specification.deleteSpecById);


  // 获取省市区
  router.get('/api/admin/getAllRegion', controller.order.getAllRegion);

  // 新增快递
  router.post('/api/admin/addShipper', controller.shipper.addShipper);
  // 根据id获取快递
  router.get('/api/admin/getShipperById', controller.shipper.getShipperById);
  // 更新快递
  router.post('/api/admin/updateShipper', controller.shipper.updateShipper);
  // 获取快递列表
  router.post('/api/admin/getShipperList', controller.shipper.getShipperList);
  // 删除某个快递
  router.post('/api/admin/deleteShipper', controller.shipper.deleteShipper);

  // 获取显示设置
  router.get('/api/admin/getShowSetting', controller.setting.getShowSetting);

  // 获取快递模板
  router.get('/api/admin/getFreightTemplateList', controller.shipper.getFreightTemplateList);
  // 根据查询条件获取快递列表
  router.get('/api/admin/getShipperListByQuery', controller.shipper.getShipperListByQuery);
  // 获取快递发件人
  router.get('/api/admin/getSenderData', controller.shipper.getSenderData);
  // 保存发件人
  router.post('/api/admin/saveSenderData', controller.shipper.saveSenderData);
  // 根据sku获取商品
  router.get('/api/admin/checkSku', controller.goods.checkSku);
  // 添加商品
  router.post('/api/admin/saveGoods', controller.goods.saveGoods);
  // 获取商品列表
  router.get('/api/admin/getGoodsList', controller.goods.getGoodsList);
  // 通过id查询商品
  router.get('/api/admin/getGoodsById', controller.goods.getGoodsById);
  // 更新排序
  router.post('/api/admin/updateGoods', controller.goods.updateGoods);
  router.post('/api/admin/updateProduct', controller.goods.updateProduct);
  router.post('/api/admin/deleteGoodsById', controller.goods.deleteGoodsById);

  // 查询广告
  router.get('/api/admin/getAdList', controller.ad.getAdList);
  // 更新广告
  router.post('/api/admin/updateAd', controller.ad.updateAd);
  // 新增广告
  router.post('/api/admin/addAd', controller.ad.addAd);
  // 根据id获取ad
  router.get('/api/admin/getAdById', controller.ad.getAdById);
  // 删除
  router.post('/api/admin/deleteAd', controller.ad.deleteAd);

  router.get('/api/admin/getNoticeList', controller.notice.getNoticeList);
  // 添加notice
  router.post('/api/admin/addNotice', controller.notice.addNotice);
  // 更新
  router.post('/api/admin/updateNotice', controller.notice.updateNotice);
  // 查询偏远地区
  router.get('/api/admin/getExceptarea', controller.shipper.getExceptarea);

  // 获取所有的省
  router.get('/api/admin/getAllProvice', controller.shipper.getAllProvice);

  // 保存偏远地区
  router.post('/api/admin/saveExceptArea', controller.shipper.saveExceptArea);
  // 根据id获取偏远地区
  router.get('/api/admin/getExceptAreaById', controller.shipper.getExceptAreaById);
  // 更新
  router.post('/api/admin/updateExceptArea', controller.shipper.updateExceptArea);
  router.post('/api/admin/deleteExceptArea', controller.shipper.deleteExceptArea);
};
